package com.sicau.socialpracticesystem.entity.param.team;

import com.sicau.socialpracticesystem.entity.param.PageParam;
import com.sicau.socialpracticesystem.util.QueryWrapperUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 团队查询参数
 * </p>
 *
 * @author sxt && ttxxi
 * @since 2021-04-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "团队查询参数", description = "团队查询参数")
public class TeamQueryParam extends PageParam implements Serializable {

    private static final long serialVersionUID = 1L;

    @QueryWrapperUtil.NeedLike
    @ApiModelProperty(value = "支队名称")
    private String teamName;

    @ApiModelProperty(value = "创建者(队长)学号")
    private Integer creatorNumber;

    @ApiModelProperty(value = "社会实践类型id")
    private Integer typeId;

    @QueryWrapperUtil.Ignore
    @ApiModelProperty(value = "开始时间")
    private LocalDate startTime;

    @QueryWrapperUtil.Ignore
    @ApiModelProperty(value = "结束时间")
    private LocalDate endTime;

    @ApiModelProperty(value = "实践出发地(0: 成都校区、1: 雅安校区、2: 都江堰校区)")
    private Integer originAddress;

    @QueryWrapperUtil.NeedLike
    @ApiModelProperty(value = "指导老师")
    private String instructor;

}
